package com.yugong.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.yugong.entity.dto.Room;
import com.yugong.entity.vo.request.RoomRequestVO;
import com.yugong.entity.vo.response.RoomListResponseVO;

import java.util.List;

/**
 * 房间业务逻辑接口
 *
 * @author yugong
 * @date 2024/2/11
 */
public interface RoomService extends IService<Room> {
    /**
     * 根据房间名查询房间
     *
     * @param pageNum  当前页
     * @param pageSize 当前页的数据个数
     * @param roomName 房间名
     * @return 房间
     */
    PageInfo<RoomListResponseVO> findRoom(Integer pageNum, Integer pageSize, String roomName);

    /**
     * 新增房间
     *
     * @param roomRequestVO 房间请求实体类
     * @return 数据库影响行数
     */
    int addRoom(RoomRequestVO roomRequestVO);

    /**
     * 更新房间
     *
     * @param roomRequestVO 房间请求实体类
     * @return 数据库影响行数
     */
    int updateRoom(RoomRequestVO roomRequestVO);

    /**
     * 删除房间
     *
     * @param roomNo 房号
     * @return 数据库影响行数
     */
    int deleteRoom(String roomNo);

    /**
     * 查询房间
     *
     * @return 房间
     */
    List<RoomRequestVO> findRoom();
}
